GithubHelp home page GithubHelp logo

zf-apigility-skeleton's People

Contributors

alextech avatar dcsg avatar endijs avatar erwinkloosterboer avatar evandotpro avatar ezimuel avatar intellix avatar jeremiahsmall avatar jguittard avatar kevin-olbrich avatar m19c avatar magicdude4eva avatar marcelto avatar michalbundyra avatar mpalourdio avatar ralphschindler avatar rockstar04 avatar roheim avatar samsonasik avatar slin-master avatar thadafinser avatar tylkomat avatar wdjer avatar weierophinney avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zf-apigility-skeleton's Issues

Missing public/* assets

After extracting the 0.6.0 release and running a composer.phar update on the contents it looks like there are a number of assets that are not routing to their respective submodules.

I see the various assets located in the vendor/zf-apiligility-[submodule]/asset; however, they are currently returning 404s.

Is the current practice to copy them into the public/zf-apiligility-[submodule]/ directory?

ZF\Apigility\Welcome is set in development.config.php

The welcome route is used by Application/src/Application/Controller/IndexController.php, however, the ZF\Apigility\Welcome is only set in development.config.php.dist. As it isn't enabled just after the install, the application then throws a Zend\Mvc\Router\Exception\RuntimeException.

"Route with name "welcome" not found"

Also, the display_exceptions set to false in zfcampus/zf-rest/config/module.config.php, makes it "hard" to find what is going on for inexperienced users.

Wrong status code for POST

I'm not sure if this issue should be on this repo, but on the autogenerated rest services status code documentation I'm seeing 200, but know that a successful POST to a resource will generate a 201.

This seems to happen both on admin screen, documentation module and documentation/swagger.

New API fails: Attempted to assign to readonly property.

I installed with:

$ composer create-project -sdev zfcampus/zf-apigility-skeleton . 1.1.1
$ php public/index.php development enable

I then loaded up the admin page in my browser and clicked 'New API'. The modal popped-up and I entered a name and clicked 'Create'. A success 'API was created' message showed, but nothing else happened. The console shows a javascript error in a resolve handler:

screen shot 2015-07-02 at 4 41 10 pm

Password for Vagrant box?

During vagrant up it asks me for the password:

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] -- 80 => 8080 (adapter 1)
[default] -- 8080 => 9090 (adapter 1)
[default] Running 'pre-boot' VM customizations...
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use!
[default] Configuring and enabling network interfaces...
[default] Mounting shared folders...
[default] -- /tmp/vagrant-puppet/manifests
[default] -- /tmp/vagrant-puppet/modules-0
[default] Exporting NFS shared folders...
Preparing to edit /etc/exports. Administrator privileges will be required...
Password:
Sorry, try again.

Is it just too early to use the Vagrant setup?

Development mode failure in production

Hi!

I recently updated to newest Apigility version and merged some changes from the skeleton app as well, when I stumble upon this problem:

You always load ZF\DevelopmentMode in:
https://github.com/zfcampus/zf-apigility-skeleton/blob/master/config/application.config.php#L11

But only require it in dev:
https://github.com/zfcampus/zf-apigility-skeleton/blob/master/composer.json#L39
First time you might catch this error is on any non-development environment.

I assume moving zf-development-mode to the "require" is the approach to fix this, correct? If so, I can sent in a pull request.

Thanks
Kevin

How to setup development & production

Hi,

I was wondering what is your recommendation on setting up development and production environments?

Am I reading this correctly that it's production if development.config.php does not exist?

What about if I map my domains (e.g. myapi.mydomain.com and myapi-dev.mydomain.com) to public and then domain name is used to map config files.

Basicly is it good to use the same Apigility installation for dev and production OR should I then just move some files to my production environment?

Administration RestServices remove config lines

Step to reproduce from admin:

  • Create Api name: "album"
  • Create RestService code connected: "albums".
  • Check config file generated at /module/album/config/module.config.php:
  • In admin web based, go to RestService just created.
  • Click on "edit" tab
  • Save without change anything.

See following comments of two lines removed:

 'zf-content-negotiation' => array(
       // ...
        'accept_whitelist' => array(
            'album\\V1\\Rest\\Albums\\Controller' => array(
                0 => 'application/vnd.album.v1+json',
                1 => 'application/hal+json',
                2 => 'application/json', // THIS LINE IS REMOVED AFTER SAVE
            ),
        ),
        // ...
    ),
    'zf-hal' => array(
        'metadata_map' => array(
            // ...
            'album\\V1\\Rest\\Albums\\AlbumsCollection' => array(
                'route_identifier_name' => 'albums_id',
                'entity_identifier_name' => 'id',
                'route_name' => 'album.rest.albums',
                'is_collection' => true, // THIS LINE IS REMOVED AFTER SAVE
            ),
        ),
    ),

Develop branch installation fails

Develop branch of Apigility Skeleton cannot be installed with composer.

$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for zfcampus/zf-apigility-admin dev-develop@dev -> satisfiable by zfcampus/zf-apigility-admin[dev-develop].
    - zfcampus/zf-apigility-admin dev-develop requires zfcampus/zf-mvc-auth dev-develop@dev -> no matching package found.

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
sylwek@sz-ubuntu:~/work/public_html/apigility$

Can`t see/use/edit created Services

when I create a new Rest-Service it tells me, that the service was created and I can see the appropriate files and directories in the file-structure on the server

but there is nothing I can do with them on the web-interface
they do not appear there

I do not have a clue why
there is no error-log, no warning or error in the browser console, no 500 or anything else ... what can I do?

I can see these files/directories in module/TestAPI/:
config
--module.config.php
Module.php
src
--TestAPI
----Module.php
----V1
--------Rest
------------TestCollection.php
------------TestEntity.php
------------TestResource.php
--------Rpc
view

Version 1.10 contains config that breaks apigility

Hi, I'm just trying the easy setup of apigility but i've encountered an error.

The following process is repeatable:

  1. curl -sS https://apigility.org/install | php
  2. cd apigility
  3. php public/index.php development disable

The site then encounters a error when accessing.

PHP Warning: require_once(/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/Module.php): failed to open stream: No such file or directory in /home/api-findstuffcheaper/temp/apigility/vendor/zendframework/zendframework/library/Zend/Loader/ModuleAutoloader.php on line 147
PHP Fatal error: require_once(): Failed opening required '/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/Module.php' (include_path='.:/usr/share/php:/usr/share/pear') in /home/api-findstuffcheaper/temp/apigility/vendor/zendframework/zendframework/library/Zend/Loader/ModuleAutoloader.php on line 147

The problem seems to stem from data/cache/module-config-cache.application.config.cache.php that contains a number of full paths that are incorrect, ie:
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/config/../view/layout/layout.phtml'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/config/../view/application/index/index.phtml'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/config/../view/error/404.phtml'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/config/../view/error/index.phtml'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/vendor/zfcampus/zf-oauth2/config/../view/zf/auth/authorize.phtml'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/vendor/zfcampus/zf-oauth2/config/../view/zf/auth/receive-code.phtml'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/module/Application/config/../view'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/vendor/zfcampus/zf-apigility-documentation/config/../view'
'/home/matthew/tmp/zf-apigility-skeleton-1.1.0/vendor/zfcampus/zf-oauth2/config/../view'

I've had a look at this repository, but can't find where that config is coming from.

Adam

File not found

I have a small discussion started days back. Looking at beta1 I am still seeing the same issue File Not Found. I am not sure whether this is only to me.

Have the code configuration in the email for a look up.

https://groups.google.com/a/zend.com/d/msg/apigility-users/exZPpU1WdBY/uh_nMuLiV2QJ

Have created users and clients ( though I don't think users are needed for this is a code connected one and the user list is already on another db ) .

I would be more happy if this can be resolved so I can move forward.
If you guys need any more information let me know. If I change the url from oauth to a different one and trying to access /oauth2 then the same File Not Found, but to all other url it is 404.

Include composer.lock

Is there a reason composer.lock is not versionned?
I'm always comfortable knowing that dependencies downloaded have been reviewed by developers!

InputFilter not used for filtering `POST` data

Hello,

I have a question or an issue, but I am not sure which of the two it is since I don't know if the behavior is wrong or expected. Let me explain.

When I register an inputFilter for a certain entity and patch an entity with data (a field) that is not registered in the inputFilter I get an ApiProblem response with status 400 and a message "Unrecognized field name".

Now in another case I post data for creating a new entity and I include the same invalid field in the data. When I look at the $data object in the create method in my ResourceListener the $data is apparently not filtered by the inputFilter, because unknown data is still present in the $data object. Normally I would expect the inputFilter to take care of unknown/unwanted by filtering it. Something like this:

$inputFilter->setData($unfilteredData);
if(!$inputFilter->isValid()){
    ...throw exception or return ApiProblem
}
$filteredData = $inputFilter->getValues();

Is the module (as the name would suggest) only for validation of data and that is why the registered inputFilters are not used for filtering POST data at all? Does it mean I still manually have to pull the data trough the filter in my ResourceListener.
I also looked at the zfcampus/zf-content-validation src files but could not find anything related to actually filtering the data.

Thanks.

Documentation when development is disabled

I have this issue in production with development mode off
I don't know it is supposed to act like this but when accessing /apigility/documentation I get a 500 internal server error
the json returned by this mvc path contains the error

Zend\ServiceManager\ServiceManager::get was unable to fetch or create an instance for ZF\Configuration\ModuleUtils

if I enable development mode, it works.

Apache configuration

If apigility is running under Apache host (or ISS), by default Apache forbids %2F for / and %5C for \ in url paths.
So when performing updates for services (PATCH http://localhost/apigility/api/module/Status/rest/Status%5CV1%5CRest%5CStatus%5CController ) Apache returns
404 Page not found page.
To allow slashes in url the AllowEncodedSlashes directive must be turned on in server configuration or virtualhost (it isn't possible to turn in on via .htaccess)

<VirtualHost *:80>
    ServerName zf2-apigility
    AllowEncodedSlashes On
    DocumentRoot "/path/to/apigility"
    <Directory "/path/to/apigility">
        # settings
    </Directory>
</VirtualHost>

Should be useful to mention it in README.md :)

Question about creating new db adapter

Hello,
when i create a new db adapter i get this message::
{"problemType":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html","title":"Internal Server Error","httpStatus":500,"detail":"An exception was raised while creating \u0022Hal\u0022; no instance returned"}

Configuration data is right.
Somebody can suggest me what i must do?

Thank you ^^

I build an Rest API that include a property type is photo, so how can I get the photo when POST a new entity?.

screen shot 2014-11-20 at 5 32 00 pm
screen shot 2014-11-20 at 5 32 33 pm

I have an Event table in Database, each event have a thumb image so I have to post Photo from API create new event.

I have follow with the https://apigility.org/documentation/recipes/upload-files-to-api
To step Validators then this step In a REST service, use this: $inputFilter = $this->getInputFilter();
I don't know how to do this. I can not find any generated source code of API web service except XXX\V1\Rest\Event2\Event2Collection.php
and XXX\V1\Rest\Event2\Event2Entity.php

But How can I make it works?

I have more questions:

  1. What is the right solution to post an entity include Photo? And how to manager Photo at server side?
  2. How can I custom the API that generate by Apigility? Where are the generated source files?

Sorry because I have just a beginner in PHP and Apigility.

I can not create a code-connected api

vagrant file doesn't work

I'm trying to start the vagrant file but it doesn't work.
VirtualBox 4.3
Vagrant 1.3.5

is there a solution?

C:\www\apigility-skeleton>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
[default] Importing base box 'precise64'...
[default] Matching MAC address for NAT networking...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Creating shared folders metadata...
[default] Clearing any previously set network interfaces...
[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] -- 80 => 8080 (adapter 1)
[default] -- 8080 => 9090 (adapter 1)
[default] Running 'pre-boot' VM customizations...
[default] Booting VM...
[default] Waiting for machine to boot. This may take a few minutes...
The guest machine entered an invalid state while waiting for it
to boot. Valid states are 'starting, running'. The machine is in the
'poweroff' state. Please verify everything is configured
properly and try again.

If the provider you're using has a GUI that comes with it,
it is often helpful to open that and watch the machine, since the
GUI often has more helpful error messages than Vagrant can retrieve.
For example, if you're using VirtualBox, run vagrant up while the
VirtualBox GUI is open.

Missing UI elements when accessing via Vagrant Box - Bad Base HREF URL

My issue is similar to #16 except I ran this from the repo's own vagrant box

My repro was

  • Install from composer create
  • Boot up the vagrant box provided in the skeleton
  • vagrant ssh
  • enabled development mode
  • then ran php -S 0.0.0.0:8080 -t public public/index.php

So on my host machine (outside the vbox),

  • Go to http://localhost:9090/
  • Get the ApiGility welcome message
  • Click on "Get Started"
  • Directs me to http://localhost:9090/apigility/ui
  • I see an unstyled page with {{ flash.message }} vars around

I do have the rwoverdijk/assetmanager directory in my vendor folder and it works fine.

I encountered a similar situation on my own vagrant box with the same issue. So I tried it with the skeleton's own vagrant box and still encountered the error.

My local enviroment

  • Ubuntu Desktop 14.04
  • Vagrant 1.6.2
  • Virtulabox 4.3.6

Any help would be great

Update: The problem does not appear if I load up the built-in PHP server locally - it only happens when if I access it via Vagrant (the php web server is started from the vagrant instance)
If I ran the PHP web server in Vagrant and access it to there, it will give me missing UI issues.
But I just ran it locally (without Vagrant), this works fine. It is still an issue because I would like to enable my fellow developers to run Apigility from their vagrant boxes and ensuring everyone is on the same env settings.

Config and module cache to application and development.config.php

I'm looking at optimising Apigility in production and noticed that this skeleton doesn't have defaults set for config cache.

return array(
    'module_listener_options' => array(
        'config_cache_enabled' => true,
        'module_map_cache_enabled' => true,
        'cache_dir' => 'data/cache/',
    ),
);

Since it's quite a simple thing (application.config.php enabling it and development.config.php disabling it). I wondered if there was any issues regarding it and Apigility? If there is no issue then I think it would be a good idea to add it as it would encourage people to use it and not forget it.

Cannot create module (500 internal server error)

The entire directory is chmod 0777. Lots of things seem broken. I am launching the server with this command:

php55 -S localhost:8080 -t public/ public/index.php PHP 5.5.0 Development Server started at Fri Nov 15 11:39:21 2013 Listening on http://localhost:8080 Document root is /Users/ryan/http/zf-apigility-skeleton/public Press Ctrl-C to quit.

Assets are visible on port 8080 launched with that command up there. All assets 404 with a correct Zend Framework 2 configuration with lighttpd.

I have tried troubleshooting this issue and have no leads.

Request URL:http://localhost:8080/admin/api/module
Request Method:POST
Status Code:500 Internal Server Error
Request Headersview source
Accept:application/json, text/plain, */*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:18
Content-Type:application/json;charset=UTF-8
Cookie:PHPSESSID=1o7nem37783csce8546ng6l3p4
Host:localhost:8080
Origin:http://localhost:8080
Referer:http://localhost:8080/admin
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36
Request Payloadview source
{name:Example}
name: "Example"
Response Headersview source
Connection:close
Content-Type:application/api-problem+json
Host:localhost:8080
X-Powered-By:PHP/5.5.0


{"problemType":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html","title":"Internal Server Error","httpStatus":500,"detail":"Unable to create module; check your paths and permissions"}```

When adding a new version the dropdown(s) do not update.

When you create a new version the url changes and the Current Version dropdown changes to an empty option and neither that dropdown or the one in the version table have the new version. A refresh is required to make them show up.

A refresh of /admin/api/module is probably needed to get the new version or the new version needs to be added to the model.

Strip invalid characters from new API name, or show a more informative warning

I was trying to create a new API (first time using Apigility) using the API name "customer-callback". I wasn't really thinking about how this would map to the actual generated classnames, and so when I saw in console a 500 Internal Server Error I went straight away and began tweaking my config without looking in more detail at the returned error.

POST http://192.168.56.101:8080/admin/api/module 500 (Internal Server Error)

After a while of going through the vagrant config I couldn't find anything wrong and eventually came back to the very end of the response and saw the following:

{"file":"/vagrant/public/index.php","line":38,"function":"run","class":"Zend\Mvc\Application","type":"->","args":[]}],"problemType":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html","title":"Internal Server Error","httpStatus":500,"detail":"Invalid module name; must be a valid PHP namespace name"}

Could the server do some checking and return an error message in the case of an invalid API name? or even just strip out any invalid characters?

RPC Services disappear in apigility-admin when remove from invokables keys.

By default apigility-admin creates RPC service in module/ApiName/config/module.config.php:

   // ...
    'controllers' => array(
        'invokables' => array(
            'key' => 'value',
        ),
    ),

But if you move this part to factories in module/ApiName/src/Directory/Module.php then apigility-admin not show this RPC service any more:

image

Thanks.

"The GET method has not been defined..." but it is...

Hello,

I am using Apigility in two of my projects but this is the first greater problem I did not get managed...

Currently I am writing my own resource methods like this:
http://techportal.inviqa.com/2013/12/03/create-a-restful-api-with-apigility/

I needed to uncomment the invokable in module.config.php for the current REST-function to make the factories work:

    public function getServiceConfig()
    {
        return array(
            'factories' => array(
                /** @var $sm ServiceManager */
                'TTClients\V1\Rest\Customers\CustomersMapper' => function ($sm) {
                        $em = $sm->get('doctrine.entitymanager.orm_default');
                        return new \TTClients\V1\Rest\Customers\CustomersMapper($em);
                    },
                'TTClients\V1\Rest\Customers\CustomersResource' => function ($sm) {
                        $mapper = $sm->get('TTClients\V1\Rest\Customers\CustomersMapper');
                        return new \TTClients\V1\Rest\Customers\CustomersResource($mapper);
                    },
            ),
        );
    }

My problem is, that I get the following error:

{
    "problemType": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html",
    "title": "Method Not Allowed",
    "httpStatus": 405,
    "detail": "The GET method has not been defined for individual resources"
}

But my CustomersResource.php includes:

    public function fetch($id)
    {
        throw new \Exception ("TEST");
        //return $this->mapper->fetchOne($id);
    }

In my opinion I should get an exeption now - even the real fetchOne() is not called when sending my query.

Route matches: /api/customers[/:customerid]
URL I send my GET to: http://localhost:8080/api/customers/1

Apigility skips field validation/filtration

Hello everyone!

I created such ticket in the apigility/users groups, but unfortunately no one answered me. https://groups.google.com/a/zend.com/forum/#!topic/apigility-users/unHt98p5XhU

I am creating a filter or a validator - but it ignores any option rules and goes further.

I tried Rob's tutorial , Matthew's video tutorial or installed apigility-skeleton from here. I even tried to debug a bit - for me it seems not even bootstrapping the content-validation module.(Required =Yes, NotEmpty validator is ON, breakonchainfailure=true - for example).

If it's really broken - it's serious. It's one of the most valuable things for apigility users.

Not sure if it's correct repository, sorry for that.

Thank you.

A few bugs

I've come across a few showstoppers:
Steps: Clean install.
Created a new DB adapter using pdo-mysql.
Tried to create a new DB-connected rest service, but this fails with a 500 in the console log:
apig500

Also, if you simply create a new Rest service, then deletes it, it doesn't seem like it cleans up properly. (The service remains in the application.config.php and errors are thrown).

API miss Edit and Delete in the GUI

Really Great app so I was expecting to have Edit and Delete Button when make mouse over so nothing happen and I can not modified or delete de api in the front end. See the image below.
skitch

RPC end points not being created

Hi,

I'm trying to create an API with an RPC end point, and it doesn't seem to be happy.

I installed from https://github.com/zfcampus/zf-apigility-skeleton/releases/download/1.0.4/zf-apigility-skeleton-1.0.4.zip

I created an api called Guru - then clicked on "RPC services" => "Create New RPC Service". I set the service name to be "Accounts" and then added the end-point "/accounts" and clicked submit.

There was no error message, but the next screen said "No RPC services defined." and clicking around the interface there are no RPC endpoints listed.

Some files have been created; below is a screenshot of them as well as the contents of one of them:

apigilitynada

But the RPC endpoint is definitely not shown in the admin screens.

This is testing on OSX with:

> php -v
PHP 5.4.9 (cli) (built: Nov 23 2012 02:31:44) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
    with Xdebug v2.2.1, Copyright (c) 2002-2012, by Derick Rethans

I have also have the same result when downloading the master from https://github.com/zfcampus/zf-apigility-skeleton

Deploying docs

Any documents how to deploy api to production version?
What files to copy and so on ?

Can't get it run because 'ZF\OAuth2\Controller\Exception\RuntimeException'

I executed "php composer.phar create-project -sdev zfcampus/zf-apigility-skeleton path/to/install" and all is fine but then when I executed "php public/index.php development enable" the following error appear:

"PHP Fatal error: Uncaught exception 'ZF\OAuth2\Controller\Exception\RuntimeException' with message 'The database configuration ['zf-oauth2']['db'] for OAuth2 is missing' in /var/www/zf-apigility-skeleton/vendor/zfcampus/zf-oauth2/src/ZF/OAuth2/Factory/PdoAdapterFactory.php:26"

The same happened after execute "php -S 0:8080 -t public/ public/index.php" and try to access the http://localhost:8080/

Running in non-root path?

It seems to be impossible to run the app now in non-root path - i.e. something like localhost:8080/apigility/. Since right now the app seems to redirect to /welcome it doesn't work.

Creating a separate vhost for every app is not always convenient. It would be nicer if it was possible to set up "root path" and it could be any path in the webserver.

500 Internal Server Error

I configured the VHOST and get the 500 Internal Server Error when I choose the Example provided by default. Below are the request and responses. Is this a known issue or I am doing something wrong?

Thank you
Sumit

Request URL: http://zf2-apigility.localhost/admin/api/module/ZF.Apigility.Example/rest?version=1
Request Method: GET
Status Code: 500 Internal Server Error

Request Headers
Accept: application/hal+json, application/json, /; q=0.01
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Connection: keep-alive
Host: zf2-apigility.localhost
Referer: http://zf2-apigility.localhost/admin
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36
X-Requested-With: XMLHttpRequest
Query String Parametersview sourceview URL encoded
version: 1

Response Headers
Connection: close
Content-Length: 222
Content-Type: application/api-problem+json
Date: Thu, 10 Oct 2013 12:11:39 GMT
Server: Apache/2.4.4 (Win64) PHP/5.4.12
X-Powered-By: PHP/5.4.12

Response
{"problemType":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html","title":"Internal Server Error","httpStatus":500,"detail":"Unable to determine configuration path for module \u0022ZF\Apigility\Example\u0022"}

Version 1.3 requires PHP 5.5 but the Vagrant box has PHP 5.4.43

The Vagrant install does not install PHP 5.5 so you cannot compose your vendors from within the Vagrant box.

vagrant@precise64:/vagrant$ ./composer.phar install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - This package requires php >=5.5 but your PHP version (5.4.43-1+deb.sury.org~precise+1) does not satisfy that requirement.

API 'test' could not be found

Hello,

I've just installed Apigility 1.0.3 in order to test it, and I found one minor issue. When my first API named 'test' was created, I've got an error message API "test" not found. After refreshing the page the API appeared.

This error is repeated each time I'm creating a new API.

Json format

Hi I was trying to change the json format currently I got this format from Apigility

[
    {
        "id": "1",
                "body": "Php is Super"
    },
    {
        "id": "2",
                 "body": "Omakase O_o"
    }
] 

So We need this format

{
  "comments": [{
    "id": "1",
    "body": "Rails is unagi"
  }, {
    "id": "2",
    "body": "Omakase O_o"
  }]
}

I was trying looking in the Documentation without any luck, could you provide help on that

Updating the skeleton

Since installing the skeleton suggests (truthfully) that you remove the existing VCS repository, so you could use your own repository, is there a suggested way of updating the skeleton when it changes ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.